FauxPilot là một nền tảng đề xuất mã tự động tự host nhằm giúp các nhà phát triển tạo mã nguồn một cách hiệu quả và nhanh chóng. Khác với các công cụ tương tự như GitHub Copilot, FauxPilot tập trung vào tích hợp mô hình ngôn ngữ tự nhiên để tạo ra mã code chất lượng cao mà không cần gửi dữ liệu người dùng đến máy chủ của bên thứ ba.
FauxPilot là một nền tảng gợi ý mã tự lưu trữ mà hỗ trợ nhiều ngôn ngữ lập trình như Java, Python, hoặc Javascript. Brendan Dolan-Gavitt, một giáo sư trợ lý tại Trường Kỹ thuật New York University Tandon, đã tạo ra nó như một phương pháp thay thế cho GitHub Copilot.
FauxPilot dựa vào Salesforce CodeGen, một mô hình ngôn ngữ lập trình trò chuyện tự động quy mô lớn. Sử dụng FauxPilot, bạn có thể loại bỏ mã lặp lại. Thay vào đó, bạn có thể dành thời gian của mình tập trung vào logic kinh doanh mà ứng dụng của bạn cần phải giải quyết.
GitHub Copilot là một công cụ thương mại phổ biến giúp tạo mã, giúp các nhà phát triển lập trình hiệu quả hơn. Tuy nhiên, nó gửi các đoạn mã của bạn lại máy chủ của Microsoft để đề xuất mã cho bạn. Điều này gây cản trở vi phạm giấy phép và mang lại mối lo ngại về lỗ hổng có thể khai thác khi mã được chuyển đến nhiều nơi.
Fauxpilot hoạt động chỉ bằng cách sử dụng các mô hình đào tạo của Codegen và không gửi mã của bạn đến bất kỳ đâu. Do đó, nó an toàn hơn GitHub Copilot.
Ngoài ra, vì Fauxpilot là một công cụ tự lưu trữ và mã nguồn mở, bạn không cần phải trả bất kỳ khoản phí nào ngoại trừ việc chạy máy chủ Fauxpilot.
Fauxpilot hỗ trợ tám mô hình của collagen.
Mô hình càng cao cấp, nó có thể tạo ra mã chính xác hơn.
Bạn có thể triển khai Fauxpilot từ đầu bằng cách sử dụng máy chủ của bạn. Tuy nhiên, việc triển khai không phải là điều dễ dàng và đòi hỏi một khoản tiền đáng kể ngay từ đầu vì bạn phải chuẩn bị một máy chủ mạnh mẽ.
Với Vultr Fauxpilot, bạn có thể bắt đầu sử dụng Fauxpilot ngay lập tức chỉ với vài cú nhấp chuột để tạo ra các máy chủ backend của Fauxpilot. Ngoài ra, chúng tôi cung cấp gói dịch vụ trả tiền theo sử dụng, cho phép bạn tối ưu hóa chi phí chạy các máy chủ Fauxpilot.
Vultr Fauxpilot cung cấp bốn mô hình ngôn ngữ được tạo mã hỗ trợ nhiều ngôn ngữ lập trình.
Để hiểu cách Fauxpilot hoạt động, hãy triển khai một máy chủ Fauxpilot (350M) và thử tương tác với nó.
Từ trang "Products" của Vultr, nhấp vào nút "+" ở phía bên phải màn hình và chọn "Deploy new server".
Bạn nên có thể truy cập vào máy chủ trong vài phút. Có thể mất khoảng 30 phút cho máy chủ backend Fauxpilot được chuẩn bị sẵn.
Để truy cập dịch vụ backend của Fauxpilot từ máy cục bộ của bạn, hãy thêm địa chỉ IP của máy cục bộ của bạn vào máy chủ Fauxpilot.
Truy cập trang tổng quan máy chủ Fauxpilot để tìm hiểu về địa chỉ IP của máy chủ, tên người dùng mặc định và mật khẩu của nó.
Sau đó, mở terminal và chạy lệnh sau (thay thế your_fauxpilot_server_ip bằng giá trị của bạn):
ssh root@your_fauxpilot_server_ip
Bây giờ bạn nên có thể truy cập vào máy chủ. Thêm địa chỉ IP của máy cục bộ của bạn vào tệp /home/fauxpilot/whitelist.txt. Để làm điều đó, chạy các lệnh sau:
nano /home/fauxpilot/whitelist.txt // Thêm IP của bạn vào dòng mới
regen_whitelist
Bây giờ bạn đã thêm địa chỉ IP của mình vào danh sách trắng của Fauxpilot. Bạn có thể tương tác với máy chủ Fauxpilot từ máy cục bộ của bạn.
Để tương tác với Fauxpilot từ máy cục bộ của bạn, bạn cần chuẩn bị các điều kiện tiên quyết sau:
Mở một cửa sổ terminal mới và chạy lệnh sau để tạo một thư mục mới có tên là Projects/openai-fauxpilot để viết mã tương tác với Fauxpilot.
mkdir ~/Projects/openai-fauxpilot -p
cd ~/Projects/openai-fauxpilot
Sau đó, tạo một môi trường ảo Python mới bằng cách chạy mã sau:
virtualenv venv
source venv/bin/activate
Tạo một tập tin Python mới có tên là main.py và sao chép mã sau vào đó:
if __name__ == '__main__':
import openai
openai.api_key='1'
openai.api_base='http://your_fauxpilot_server_ip/v1'
result = openai.Completion.create(model='fastertransformer', prompt='def add (int a, int b)', max_tokens=16, temperature=0.1, stop=["\n\n"])
print(result)
Mã trên dùng để gửi yêu cầu API đến máy chủ Fauxpilot, với prompt là “def add (int a, int b)” và mô hình là “fastertransformer”.
Thay thế “your_fauxpilot_server_ip” bằng giá trị của bạn. Thực thi lệnh sau để chạy mã:
venv/bin/python3.* main.py // * là phiên bản của ngôn ngữ lập trình Python của bạn
Bạn nên thấy một kết quả tương tự như sau:
{
"id": "cmpl-XkX0CyWAOKvxgL5ttq2FnNHSOAFkG",
"model": "codegen",
"object": "text_completion",
"created": 1686297110,
"choices": [
{
"text": " {\n return a + b;\n }",
"index": 0,
"finish_reason": "stop",
"logprobs": null
}
],
"usage": {
"completion_tokens": 12,
"prompt_tokens": 9,
"total_tokens": 21
}
}
Bạn có thể tương tác với máy chủ Fauxpilot từ máy cục bộ của mình bằng cách sử dụng OpenAI API. Hãy xem cách bạn có thể tương tác với máy chủ Fauxpilot bằng cách sử dụng API RESTful của nó.
Có rất nhiều công cụ để thực hiện các yêu cầu đến các API RESTful, như Postman, Insomnia, hoặc curl. Hãy sử dụng lệnh dòng lệnh curl.
Chạy lệnh sau để gửi một yêu cầu API đến máy chủ Fauxpilot để nhận mã đề xuất với dữ liệu đầu vào là “def add (int a, int b)”.
curl -X POST -H 'Content-Type: application/json' -d '{
"prompt": "def add (int a, int b)",
"max_tokens": 256,
"temperature": 0.1,
"top_p":1,
"stop": [
"\n\n"
],
"model":"fastertransformer"
}' http://your_fauxpilot_server_ip/v1/engines/codegen/completions
Bạn nên thấy phản hồi dưới đây:
{"id": "cmpl-4mE4IP1CFMJVp3ppDhZYWsSzQtHgC", "model": "codegen", "object": "text_completion", "created": 1686297974, "choices": [{"text": " {\n return a
+ b;\n}", "index": 0, "finish_reason": "stop", "logprobs": null}], "usage": {"completion_tokens": 12, "prompt_tokens": 9, "total_tokens": 21}}
Bây giờ bạn có thể tương tác với máy chủ Fauxpilot bằng cách sử dụng API RESTful của nó. Hãy tiếp tục để xem làm cách nào bạn có thể nhận được mã đề xuất trong Visual Studio Code với sự giúp đỡ của Fauxpilot.
Để tích hợp Fauxpilot với Visual Studio Code, trước tiên bạn phải cài đặt tiện ích mở rộng GitHub Copilot.
Sau khi cài đặt GitHub Copilot, bạn cần thêm cấu hình GitHub Copilot với các giá trị máy chủ Fauxpilot vào tệp cài đặt người dùng của Visual Studio Code.
Thêm nội dung sau vào tệp “settings.json”.
"github.copilot.enable": {
"*": true,
"plaintext": true,
"markdown": true,
"scminput": true
},
"github.copilot.inlineSuggest.enable": true,
"github.copilot.editor.enableAutoCompletions": true,
"github.copilot.advanced": {
"model":"fastertransformer",
"debug.overrideEngine": "codegen",
"debug.testOverrideProxyUrl": "http://your_fauxpilot_server_ip",
"debug.overrideProxyUrl": "http://your_fauxpilot_server_ip"
},
"editor.inlineSuggest.enabled": true
Thay thế “your_fauxpilot_server_ip” bằng giá trị của bạn.
Bây giờ mọi thứ đã sẵn sàng, hãy viết mã trong Visual Studio Code.
Tạo một thư mục mới có tên là fauxpilot-code-suggestion-vscode bên trong thư mục ~/Projects.
mkdir ~/Projects/fauxpilot-code-suggestion-vscode
cd ~/Projects/fauxpilot-code-suggestion-vscode
Mở thư mục fauxpilot-code-suggestion-vscode bằng VS Code. Tạo một tệp mới có tên là main.py.
Mở tệp main.py trong VS Code. Thử viết mã sau vào tệp.
# def add (int a, int b):
Sau đó, nhấn phím Enter để chuyển đến dòng mới. Chú ý mã được tạo ra cho hàm def add (int a, int b).
# return a + b
Bạn đã tích hợp Fauxpilot thành công với Visual Studio Code. Hãy thỏa sức tương tác với nó.
Việc sử dụng Fauxpilot sẽ giúp bạn tiết kiệm được một lượng lớn thời gian vì bạn sẽ không phải viết mã lặp đi lặp lại. Thay vào đó, bạn có thể tập trung vào việc viết mã logic kinh doanh ý nghĩa để hoàn thành các nhiệm vụ của mình.
Tips: Tham gia Channel Telegram KDATA để không bỏ sót khuyến mãi hot nào